

package com.loong.loong.hik.entity;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.time.LocalDateTime;
import java.util.Date;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 监控表
 *
 * @author jinyiang
 * @date 2023-03-29 11:06:38
 */
@Data
@TableName("hik_monitor")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "监控表")
public class Monitor extends Model<Monitor> {

    private static final long serialVersionUID = 1L;

    /**
     * 监控id
     */
	@ExcelIgnore

	@TableId(value="monitor_id",type = IdType.ASSIGN_ID)
    @ApiModelProperty(value="监控id")
    private Integer monitorId;

    /**
     * 监控名称
     */

    @ApiModelProperty(value="监控点名称")
	@ExcelProperty("监控点名称")
    private String cameraName;
    /**
     * 设备编号
     */
	@ExcelProperty("监控点编号")

	@ApiModelProperty(value="监控点编号")
    private String cameraIndexCode;

    /**
     * ip
     */
	@ExcelProperty("ip")

	@ApiModelProperty(value="ip")
    private String ipAddress;

    /**
     * 用户名
     */
	@ExcelProperty("用户名")

	@ApiModelProperty(value="用户名")
    private String username;

    /**
     * 密码
     */
	@ExcelProperty("密码")

	@ApiModelProperty(value="密码")
    private String password;

    /**
     * 端口号
     */
	@ExcelProperty("端口号")

	@ApiModelProperty(value="端口号")
    private Integer portNumber;

    /**
     * 编码方式
     */
	@ExcelProperty("编码方式")

	@ApiModelProperty(value="编码方式")
    private String encodingMethod;

    /**
     * 设备类型
     */
	@ExcelProperty("监控点类型 0 枪机 1半球 2 快球 3 云台枪机")

	@ApiModelProperty(value="监控点类型")
    private String cameraType;

    /**
     * 设备状态
     */
	@ExcelProperty("在线状态 0-未知，1-在线，2-离线")

	@ApiModelProperty(value="在线状态")
    private String status;



    /**
     * 创建时间
     */
	@ExcelProperty("创建时间")
	@ApiModelProperty(value="创建时间")
	@TableField(fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 更新时间
     */
	@ExcelProperty("更新时间")
	@ApiModelProperty(value="更新时间")
	@TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;

    /**
     * 0正常 其余则为删除
     */

    @ApiModelProperty(value="0正常 其余则为删除")
	@TableLogic
	@TableField(fill = FieldFill.INSERT)
	@ExcelIgnore
    private String delFlag;

	/**
	 * 操作人
	 */
	@ExcelProperty("操作人")
	@ApiModelProperty(value="操作人")
	@TableField(fill = FieldFill.INSERT_UPDATE)
	private String updateBy;

	@TableField(exist = false)
	@ExcelIgnore
	private String startTime;

	@TableField(exist = false)
	@ExcelIgnore
	private String endTime;
	@TableField(exist = false)
	private String likeName;
	//监控点类型名称
	@TableField(exist = false)
	private String cameraTypeName;
	//设备能力
	@TableField(exist = false)
	private String capabilitySet;
	//设备能力说明
	@TableField(exist = false)
	private String capabilitySetName;
	//所属区域唯一标识
	private String regionIndexCode;
	//安装位置
	private String installLocation;

}
